<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns:ui="http://java.sun.com/jsf/facelets"
                template="../../resources/templates/login.xhtml"
                xmlns:p="http://primefaces.org/ui"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:sec="http://www.springframework.org/security/facelets/tags" >

    <ui:define name="menu_horizontal">
        <sec:ifAnyGranted roles="ROLE_SERVIDOR,ROLE_ADMINISTRADOR">
            <ui:include src="/site/acessoServidor/menu.xhtml" />
        </sec:ifAnyGranted>
    </ui:define>
    
    <ui:define name="corpo">
        <sec:ifAnyGranted roles="ROLE_SERVIDOR,ROLE_ADMINISTRADOR">
            
                <h:form id="formSalvar">
                <p:panel  header="Cadastro de Disciplinas"> 
                    <p:messages id="msgs"/> 
                    <h:panelGrid columns="2">
                    
                    Unidade Curricular: <p:inputText value="#{controllerDisciplina.disciplina.unidade_curricular}" style="width: 200px"/>
                    Codigo: <p:inputText value="#{controllerDisciplina.disciplina.codigo}" style="width: 200px"/>
                    Descrição: <p:inputText value="#{controllerDisciplina.disciplina.descricao}" style="width: 200px"/>
                    Objetivos: <p:inputText value="#{controllerDisciplina.disciplina.objetivos}" style="width: 200px"/>
                    Carga Horario: <p:inputText value="#{controllerDisciplina.disciplina.carga_horaria}" style="width: 200px"/>
                    Emenda: <p:inputText value="#{controllerDisciplina.disciplina.ementa}" style="width: 200px"/>
                    Período:* <p:inputText value="#{controllerDisciplina.disciplina.periodo}" style="width: 200px"/>
                    Competencias: <p:inputText value="#{controllerDisciplina.disciplina.competencias}" style="width: 200px"/>
                    Habilidades: <p:inputText value="#{controllerDisciplina.disciplina.habilidades}" style="width: 200px"/>
                    Base Tecnologica: <p:inputText value="#{controllerDisciplina.disciplina.base_tecnologica}" style="width: 200px"/>
                    Base Cientifica: <p:inputText value="#{controllerDisciplina.disciplina.base_cientifica}" style="width: 200px"/>
                    Base Instrumental: <p:inputText value="#{controllerDisciplina.disciplina.base_instrumental}" style="width: 200px"/>
                    Conteúdo: <p:inputText value="#{controllerDisciplina.disciplina.conteudo}" style="width: 200px"/>
                    Referência Bibliografica: <p:inputText value="#{controllerDisciplina.disciplina.referencia_bibliografica}" style="width: 200px"/>
                    Matriz Curricular:
                    <p:selectOneMenu value="#{controllerDisciplina.disciplina.matrizcurricular}" converter="#{MatrizCurricularConverter}" style="width: 230px">
                            <f:selectItem itemLabel="-- Selecione --" noSelectionOption="true"/>
                            <f:selectItems value="#{controllerMatriz.lista}" var="tipo" itemValue="#{tipo}" itemLabel="#{tipo.curso.nome}/#{tipo.inicio_vigencia}"/>
                        
                        </p:selectOneMenu>

                    <p:commandButton value="Salvar" ajax="true" update="@form" actionListener="#{controllerDisciplina.salvarDisc()}" />
               
                    
                    </h:panelGrid>
                </p:panel>


                    <p:dataTable id="tabela" var="p" value="#{controllerDisciplina.listaDMdisc}" emptyMessage="Nada encontrado..."
                                 paginator="true" rows="10"  paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}" 
                     rowsPerPageTemplate="5,10,15"   >
                    <p:column headerText="Matéria" filterBy="#{p.unidade_curricular}" >
                        <h:outputText value="#{p.unidade_curricular}"/>
                    </p:column>
                    <p:column headerText="Código">
                        <h:outputText value="#{p.codigo}"/>
                    </p:column>
                    <p:column headerText="Equivalência" width="70">
                        <p:commandLink process="@this" actionListener="#{controllerDisciplina.prepararAlterar()}" ajax="true" oncomplete="dialogIncluirEquivalencia.show();" update=":formIncluirEquivalencia" style="margin-left: 45px">
                            <p:graphicImage value="/resources/images/doc1.png" height="25" width="25" />
                        </p:commandLink>
                    </p:column>
                    <p:column headerText="Pré Requisito" width="75">
                        <p:commandLink process="@this" actionListener="#{controllerDisciplina.prepararAlterar()}" ajax="true" oncomplete="dialogIncluirPre.show();" update=":formIncluirPre" style="margin-left: 50px">
                            <p:graphicImage value="/resources/images/doc2.png" height="25" width="25"/>
                        </p:commandLink>
                     </p:column>
     
                    <p:column width="50">
                        <p:commandLink actionListener="#{controllerDisciplina.prepararAlterar()}" ajax="true" oncomplete="dialogAlterar.show();" update=":formAlterar">
                            <p:graphicImage value="/resources/images/edit.png"/>
                        </p:commandLink>                        
                        <p:commandLink actionListener="#{controllerDisciplina.removerDisc()}" ajax="true" process="@this" update="@form">
                            <p:graphicImage value="/resources/images/delete.png"/>
                        </p:commandLink>
                    </p:column>
                </p:dataTable>
                
                 

            </h:form>
            
              <p:dialog widgetVar="dialogAlterar" resizable="false" closable="false" modal="true" showEffect="slide" hideEffect="slide">
                <h:form id="formAlterar">
                    <p:panel style="width: 320px;">
                        <p:messages id="msgs"/> 
                        <h:panelGrid columns="2">
                            
                    Unidade Curricular: <p:inputText value="#{controllerDisciplina.disciplina.unidade_curricular}" style="width: 200px"/>
                    Codigo: <p:inputText value="#{controllerDisciplina.disciplina.codigo}"  style="width: 200px"/>
                    Descrição: <p:inputText value="#{controllerDisciplina.disciplina.descricao}" style="width: 200px" />
                    Objetivos: <p:inputText value="#{controllerDisciplina.disciplina.objetivos}" style="width: 200px" />
                    Carga Horario: <p:inputText value="#{controllerDisciplina.disciplina.carga_horaria}"  style="width: 200px"/>
                    Emenda: <p:inputText value="#{controllerDisciplina.disciplina.ementa}"  style="width: 200px"/>
                    Período:* <p:inputText value="#{controllerDisciplina.disciplina.periodo}"  style="width: 200px"/>
                    Competencias: <p:inputText value="#{controllerDisciplina.disciplina.competencias}" style="width: 200px" />
                    Habilidades: <p:inputText value="#{controllerDisciplina.disciplina.habilidades}"  style="width: 200px"/>
                    Base Tecnologica: <p:inputText value="#{controllerDisciplina.disciplina.base_tecnologica}" style="width: 200px" />
                    Base Cientifica: <p:inputText value="#{controllerDisciplina.disciplina.base_cientifica}" style="width: 200px" />
                    Base Instrumental: <p:inputText value="#{controllerDisciplina.disciplina.base_instrumental}"  style="width: 200px"/>
                    Conteúdo: <p:inputText value="#{controllerDisciplina.disciplina.conteudo}"  style="width: 200px"/>
                    Referência Bibliografica: <p:inputText value="#{controllerDisciplina.disciplina.referencia_bibliografica}"  style="width: 200px"/>
                    Matriz Curricular:
                     <p:selectOneMenu value="#{controllerDisciplina.disciplina.matrizcurricular}" converter="#{MatrizCurricularConverter}" style="width: 230px">
                            <f:selectItem itemLabel="-- Selecione --" noSelectionOption="true"/>
                            <f:selectItems value="#{controllerMatriz.lista}" var="tipo" itemValue="#{tipo}" itemLabel="#{tipo.curso.nome}/#{tipo.inicio_vigencia}"/>
                        
                        </p:selectOneMenu>
              
          
                                           
                            
                            
                    <p:commandButton value="Alterar" actionListener="#{controllerDisciplina.alterar()}" oncomplete="dialogAlterar.hide()" update=":formSalvar" 
                                     style="margin-top: 30px"/>
                    <p:commandButton value="cancelar" actionListener="#{controllerDisciplina.limparDisc()}" oncomplete="dialogAlterar.hide()" update=":formSalvar" 
                                     style="margin-top: 30px;margin-left: 0px;"/>
                        </h:panelGrid>
                    </p:panel>
                </h:form>
            </p:dialog>
     
            
            <p:dialog widgetVar="dialogIncluirEquivalencia" resizable="false" closable="false" modal="true" showEffect="slide" hideEffect="slide">
                <h:form id="formIncluirEquivalencia">
                    <p:panel>
                        <p:messages id="msgs"/> 
                        <h:panelGrid columns="2">
                            
                           
                            Incluir Equivalência:
                            <p:selectOneMenu value="#{controllerDisciplina.disciplinaEquivalente.disciplina_eq}" converter="#{DisciplinaConverter}">  
                                <f:selectItems value="#{controllerDisciplina.listaDisc}" var="tipo" itemValue="#{tipo}" itemLabel="#{tipo.codigo}"/>
                            </p:selectOneMenu>

                            
                            <p:commandButton value="Adicionar" actionListener="#{controllerDisciplina.salvarEqv()}" oncomplete="dialogIncluirEquivalencia.hide()" update=":formIncluirEquivalencia,:growl" 
                                             style="margin-top: 30px" />
                            <p:commandButton value="cancelar" actionListener="#{controllerDisciplina.limparDisc()}" oncomplete="dialogIncluirEquivalencia.hide()" update=":formIncluirEquivalencia" 
                                                style="margin-top: 30px;margin-left: 0px;"/>
                        </h:panelGrid>
                    </p:panel>
                </h:form>
            </p:dialog>
     
            

            <p:dialog widgetVar="dialogIncluirPre" resizable="false" closable="false" modal="true" showEffect="slide" hideEffect="slide">
                <h:form id="formIncluirPre">
                    <p:panel style="width: 320px;">
                        <p:messages id="msgs"/> 
                        <h:panelGrid columns="2">
                            
                            Incluir Equivalência:
                            <p:selectOneMenu value="#{controllerDisciplina.pre_requisito.disc_eq}" converter="#{DisciplinaConverter}">  
                                <f:selectItems value="#{controllerDisciplina.listaDisc}" var="tipo" itemValue="#{tipo}" itemLabel="#{tipo.codigo}"/>
                            </p:selectOneMenu>
                    
                                           
                            
                            
                            <p:commandButton value="Adicionar" actionListener="#{controllerDisciplina.salvarPre()}" oncomplete="dialogIncluirPre.hide()" update=":formIncluirPre,:growl" 
                                             style="margin-top: 30px"/>
                            <p:commandButton value="cancelar" actionListener="#{controllerDisciplina.limparDisc()}" oncomplete="dialogIncluirPre.hide()" update=":formIncluirPre" 
                                                style="margin-top: 30px;margin-left: 0px;"/>
                        </h:panelGrid>
                    </p:panel>
                </h:form>
            </p:dialog>
            
            
            

            
            
        </sec:ifAnyGranted>
    </ui:define>
    
</ui:composition>

